package com.example.task.timer.cass1;

import com.example.task.service.OrderService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;

import javax.annotation.Resource;

/**
 * @author sunny
 * @desc 执行任务   case1 采用异步线程池的方案
 */
@Component
@Slf4j
public class TaskExecute {

    @Resource
    private OrderService orderService;

    /**
     * 任务发起
     * 需求两个任务 从同一个定时任务触发  该方法是两个方法的总入口
     *
     *  定时每日0点开始扫描订单表，对于前一天已完成的订单，将订单金额统计到上一天的营业额。
     *  对于超过24小时未支付的订单，做自动取消并通知给用户的功能。（通知功能可以使用伪代码）
     */
    public void execute(){
        // 下面两个具体的实现都使用的 异步线程池

        // 查询前一天已完成的订单
        orderService.findPayOrderByTime();

        // 查询超过24小时未支付的订单的订单
        orderService.findUnpayOrderByTime();


    }



}
